// 系统配置
export const config = {
  // MinIO配置
  minio: {
    baseUrl: 'http://172.172.2.15:9000', // MinIO服务地址
    bucket: 'ai-online-class', // 默认存储桶
  },
  
  // API配置
  api: {
    baseUrl: '/api', // API基础路径
  },
  
  // 图片配置
  image: {
    defaultLogo: 'https://images.unsplash.com/photo-1498050108023-c5249f4df085?w=300&h=200&fit=crop&crop=center',
    maxSize: 2 * 1024 * 1024, // 2MB
    allowedTypes: ['image/jpeg', 'image/png', 'image/gif', 'image/webp'],
  }
};

// 获取MinIO完整URL
export const getMinioUrl = (path: string): string => {
  if (!path) return config.image.defaultLogo;

  if (path.startsWith('http://') || path.startsWith('https://')) {
    return path;
  }

  // 如果path以pic/开头，直接拼接
  if (path.startsWith('pic/')) {
    return `${config.minio.baseUrl}/${path}`;
  }

  // 其他情况，补全pic/
  return `${config.minio.baseUrl}/pic/${path}`;
};

// 验证图片文件
export const validateImageFile = (file: File): { valid: boolean; message?: string } => {
  if (!file) {
    return { valid: false, message: '请选择文件' };
  }
  
  if (!config.image.allowedTypes.includes(file.type)) {
    return { valid: false, message: '只支持 JPG、PNG、GIF、WebP 格式的图片' };
  }
  
  if (file.size > config.image.maxSize) {
    return { valid: false, message: `图片大小不能超过 ${config.image.maxSize / 1024 / 1024}MB` };
  }
  
  return { valid: true };
}; 